// pages/shijihai/unit6/case6-3-3/case6-3-3.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    opName:"",
    opResult:"",
    opResult2:"",
    resData:null,
    resData2:null,
    finshed:false
  },
  addRecord:function(){
    this.setData({
      opName:"add",
      finshed:false
    })
  },
  deleteRecord:function(){
    this.setData({
      opName:"del",
      finshed:false
    })
  },
  updateRecord:function(){
    this.setData({
      opName:"upd",
      finshed:false
    })
  },
  queryRecord:function(){
    this.setData({
      opName:"qry",
      finshed:false
    })
  },
  makeDataString:function(dateObj){
    return dateObj.getFullYear()+"-"+(dateObj.getMonth()+1)+"-"+dateObj.getDate();
  },
  makeTimeString:function(dateObj){
    return dateObj.getHours()+"-"+(dateObj.getMinusres()+1)+"-"+dateObj.getSeconds();
  },
  daAdd:function(e){
    console.log(e)
    var workContent=e.detail.value.workContent
    if(workContent !=""){
      const db=wx.clod.database()
      var myDate=new Date()
      db.collection('work_done').add({
        data:{
          date:this.makeDataString(myDate),
          time:this.makeDataString(myDate),
          content:workContent
        },
        complete:res=>{
          this.setData({
            finshed:true
          })
        },
        success:res=>{
          this.setData({
            opResult:"操作完成，新增一条记录，_id为：\n",
            resData:res._id
          })
          wx.showToast({
            title: ' 新增记录成功',
          })
          console.log('[数据库][新增记录] 成功,记录 _id:',res._id)
        },
        fail:err=>{
          wx.showToast({
            icon: 'none',
            title:'新增记录失败'
          })
          console.error('[数据库][新增记录] 失败:',err)
        }
      })
    } else{
      wx.showToast({
        title: '请输入事情描述！',
      })
    }
  },
  doDelete:function(e){
    console.log(e)
    var that=this
    var itemID=e.detail.value.itemID
    if(itemID !=""){
      const db=wx.cloud.database()
      db.collection('work_done')
.doc(itemID).get({
  success:res=>{
    console.log(res)
    this.setData({
      opResult:'查询记录成功:\n',
      resData:res.data
     })
     db.collection('work_done').doc(itemID).remove({
       complete:res=>{
         that.setData({
           finshed:true
         })
       },
       success:err=>{
         console.log('[数据库][删除记录] 成功:',res)
         that.setData({
           opResult2:'已成功删除上面的记录。'
         })
       },
       fail:err=>{
         wx.showToast({
           icon: 'none',
           title:'删除记录失败'
         })
         console.error('[数据库][删除记录] 失败:',err)
       }
    })
  },
  fail:err=>{
    wx.showToast({
      icon:'none',
      title: '查询记录失败',
    })
    console.error('[数据库][查询记录] 失败:',err)
  }
  })
 } else {
    wx:showToast({
      title: '请输入itemID!',
    })
  }
},
doUpdate:function(e){
  console.log(e)
  var that=this
  var itemID=e.detail.value.itemID
  var workContent=e.detail.value.workContent
  if(itemID !=""){
    const db=wx.cloud.database()
    db.collection('work-done').doc(itemID).get({
      success:res=>{
        this.setData({
          opResult:'查询记录成功:\n',
          resData:res.data
        })
        db.collection('work_done').doc(itemID).update({
          data:{
            content:workContent,
          },
          complete:res=>{
            that.setData({
              finshed:true
            })
          },
          success:res=>{
            console.log('[数据库][更新记录] 成功:',res)
            that.setData({
              opResult2:'已成功更新上面的记录内容为：\n',
            })
          },
          fail:err=>{
            wx.showToast({
              icon: 'none',
              title:'更新记录失败'
            })
            console.error('[数据库][更新记录] 失败:',err)
          }
        })
      },
      fail:err=>{
        wx.showToast({
          icon:'none',
          title: '查询记录失败',
        })
        console.error('[数据库][查询记录] 失败:',err)
      }
      })
     } else {
        wx:showToast({
          title: '请输入itemID!',
        })
      }
   },
  doQuery:function(e){
    console.log(e)
    var wokDate=e.detail.value.workDate
    if(wokDate !=""){
      const db=wx.cloud.database()
      db.collection('work_done').where({
        date:workDate
      }).get({
        complete:res=>{
          this.setData({
            finshed:true
          })
        },
        success:res=>{
          this.setData({
            opResult:"操作完成，查询到"+res.data.length+"条记录:\n",
            resData:res.data
          })
          console.log('[数据库][查询记录] 成功:',res)
        },
        fail:err=>{
          wx.showToast({
            icon:'none',
            title: '查询记录失败',
          })
          console.error('[数据库][查询记录] 失败:',err)
        }
      })
    } else{
      wx.showToast({
        title:'请输入查询日期！',
      })
    }
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})